package com.sy.constant;

public class BusinessConstant {
    /**
     * 属性描述: 短信发送成功的状态码
     */
    public static final int SMS_SUCCESS_CODE = 0;
    /**
     * 属性描述: 学员身份标识
     */
    public static final String STUDENT_NAME = "学员";
    /**
     * 属性描述: 教练身份标识
     */
    public static final String COACH_NAME = "教练";
    /**
     * 属性描述: Redis中用于保存验证码的key的前缀
     */
    public static final String REDIS_VALIDATE_CODE_KEY_PREFIX = "validateCode:";
    /**
     * 属性描述: 验证码的有效时间(单位:s)
     */
    public static final int VALIDATE_CODE_EXPIRE_SECONDS = 30 * 60;
    /**
     * 属性描述: Cookie中用于保存客户端唯一标识的属性的名字
     */
    public static final String COOKIE_USER_TOKEN_NAME = "token";

    /**
     * 属性描述: Cookie中用于保存管理端唯一标识的属性的名字
     */
    public static final String COOKIE_ADMIN_TOKEN_NAME = "adminToken";

    /**
     * 属性描述: Cookie的默认名字
     */
    public static final String DEFAULT_COOKIE_NAME = "1234";
    /**
     * 属性描述: 用户登录状态的有效时间(单位:s)
     */
    public static final int USER_SESSION_MAX_AGE = 7 * 24 * 60 * 60;
    /**
     * 属性描述: Redis中用于存储用户状态的key的前缀
     */
    public static final String REDIS_USER_KEY_PREFIX = "user:";

    /**
     * 属性描述: Redis中用于存储管理员状态的key的前缀
     */
    public static final String REDIS_ADMIN_KEY_PREFIX = "admin:";
    /**
     * 属性描述: Cookie的路径
     */
    public static final String COOKIE_ROOT_PATH = "/";
    /**
     * 属性描述: Cookie的最小时间
     */
    public static final int COOKIE_MIN_AGE = 0;
    /**
     * 属性描述: 顶级分类的父级分类Id
     */
    public static final int ROOT_PROVINCE_PARENT_ID = 0;
    /**
     * 属性描述: REDIS中保存分类信息的key
     */
    public static final String REDIS_PROVINCE_KEY = "provinces";
    /**
     * 属性描述: REDIS中保存信息集合的key
     */
    public static final String REDIS_ARTICLE_KEY = "article";
    /**
     * 属性描述: 默认城市ID
     */
    public static final Integer DEFAULT_CITY_ID = 1;
    /**
     * 属性描述: Redis中视频的点击量数据的key
     */
    public static final String REDIS_VIDEO_VOLUME_KEY = "volume";
    /**
     * 属性描述: Redis中视频点击量的递增值
     */
    public static final int VOLUME_INCR = 1;
    /**
     * 属性描述: Redis中点击量排行榜最小索引
     */
    public static final long REDIS_VOLUME_DATA_MIN_INDEX = 0;
    /**
     * 属性描述: Redis中点击量排行榜最大索引
     */
    public static final long REDIS_VOLUME_DATA_MAX_INDEX = 9;
    /**
     * 属性描述: 成功点赞的状态码
     */
    public static final int SUCCESS_THUMBS_UP = 1;
    /**
     * 属性描述: Redis中视频点赞的递增值
     */
    public static final int THUMBS_UP_INCR = 1;
    /**
     * 属性描述: Redis中视频取消点赞的值
     */
    public static final int CANCEL_THUMBS_UP_INCR = -1;
    /**
     * 属性描述: 取消点赞的状态码
     */
    public static final int CANCEL_THUMBS_UP = 0;
    /**
     * 属性描述: 定时同步点击量的Cron表达式
     */
    public static final String CRON_SYNC_CLICK_COUNT = "0 0 0 * * ?";
    /**
     * 属性描述: Redis中用于保存登录用户访问记录的key的前缀
     */
    public static final String REDIS_HISTORY_KEY_PREFIX = "history:";

    /**
     * 属性描述: Redis中用于保存未登录用户访问记录的key的前缀
     */
    public static final String REDIS_TEMP_HISTORY_KEY_PREFIX = "temp_history:";

    /**
     * 属性描述: REDIS中删除list集合中全部元素的数量
     */
    public static final long REDIS_DEL_LIST_ELE_MAX_COUNT = 0L;
    /**
     * 属性描述: 历史记录中元素的最大数量
     */
    public static final long HISTORY_LIST_MAX_LENGTH = 10L;
    /**
     * 属性描述: 历史记录中元素的最小索引
     */
    public static final long HISTORY_LIST_MIN_INDEX = 0L;
    /**
     * 属性描述: Cookie中用于保存未登录时候历史记录的Cookie的名字
     */
    public static final String COOKIE_TEMP_HISTORY_NAME = "temp_history";
    /**
     * 属性描述: 顶级分类的父级分类Id
     */
    public static final int ROOT_CATEGORY_PARENT_ID = 0;
    /**
     * 属性描述: REDIS中保存分类信息的key
     */
    public static final String REDIS_CATEGORIES_KEY = "categories";
    /**
     * 属性描述: 商品查询结果页中每页的数量
     */
    public static final long PRODUCT_SEARCH_RESULT_PAGE_SIZE = 20L;
    /**
     * 属性描述: Redis中购物车信息的key的前缀
     */
    public static final String REDIS_CART_KEY_PREFIX = "cart:";

    /**
     * 属性描述: Redis中订单编号中递增序列计数器对应的key
     */
    public static final String REDIS_ORDER_INCR_SEQUENCE_KEY = "orderId";

    /**
     * 属性描述: Redis中订单提交次数上限对应的key的前缀
     */
    public static final String REDIS_SUBMIT_ORDER_LIMIT_TIMES_KEY_PREFIX = "orderSubmitLimitTimes:";

    /**
     * 属性描述: 单位时间内订单提交的最大次数
     */
    public static final long ORDER_SUBMIT_MAX_TIMES = 3L;
    /**
     * 属性描述: 订单提交的最大次数对应的时间（单位:s）
     */
    public static final int ORDER_SUBMIT_MAX_TIMES_LIMIT_PERIOD = 30;
    /**
     * 属性描述: 默认页码
     */
    public static final int DEFAULT_PAGE_NO = 1;
    /**
     * 属性描述: 默认的每页条数
     */
    public static final int DEFAULT_PAGE_SIZE = 8;


}
